package cn.iocoder.yudao.module.crm.service.clue;

import cn.iocoder.yudao.module.crm.controller.admin.clue.vo.poolconfig.CrmCluePoolConfigSaveReqVO;
import cn.iocoder.yudao.module.crm.controller.admin.customer.vo.poolconfig.CrmCustomerPoolConfigSaveReqVO;
import cn.iocoder.yudao.module.crm.dal.dataobject.clue.CrmCluePoolConfigDO;
import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerPoolConfigDO;

import javax.validation.Valid;
import java.util.Collection;
import java.util.List;

/**
 * 线索公海配置 Service 接口
 */
public interface CrmCluePoolConfigService {


    /**
     * 获取指定模块的公海规则配置
     * @param moduleId
     * @since 2024-06-21
     * @author PetePower
     * @return
     */
    CrmCluePoolConfigDO getCluePoolConfigByModule(Long moduleId);


    /**
     * 保存线索公海配置
     *
     * @param saveReqVO 更新信息
     */
    void saveCluePoolConfig(@Valid CrmCluePoolConfigSaveReqVO saveReqVO);



    List<CrmCluePoolConfigDO> getCluePoolListByModuleIds(Collection<Long> ids);

    List<CrmCluePoolConfigDO> getCluePoolList();
}
